import { apiClient } from 'axiom-view';

const BASE_URL = '/storage/buckets';

/**
 * 存储桶管理 API
 */
export const bucketApi = {
  /**
   * 获取存储桶列表（分页）
   * @param {object} params - 查询参数，例如 { page: 1, page_size: 20 }
   * @returns {Promise<any>}
   */
  getList(params) {
    return apiClient.get(BASE_URL, { params });
  },

  /**
   * 新增存储桶
   * @param {object} data - 存储桶信息，例如 { display_name: 'string', description: 'string' }
   * @returns {Promise<any>}
   */
  create(data) {
    return apiClient.post(BASE_URL, data);
  },

  /**
   * 获取存储桶详情
   * @param {string|number} bucketId - 存储桶ID
   * @returns {Promise<any>}
   */
  getDetails(bucketId) {
    return apiClient.get(`${BASE_URL}/${bucketId}`);
  },

  /**
   * 修改存储桶信息
   * @param {string|number} bucketId - 存储桶ID
   * @param {object} data - 要更新的存储桶信息
   * @returns {Promise<any>}
   */
  update(bucketId, data) {
    return apiClient.put(`${BASE_URL}/${bucketId}`, data);
  },

  /**
   * 删除存储桶
   * @param {string|number} bucketId - 存储桶ID
   * @returns {Promise<any>}
   */
  delete(bucketId) {
    return apiClient.delete(`${BASE_URL}/${bucketId}`);
  },
}; 